// 引入axios
import axios from 'axios'

// 封装一个ajax请求方法
function ajaxFunc(req) {
    return new Promise(resolve => {

        // 把动态数据 url、method、params、data 抽取出来
        axios.request({
            // 设置请求地址
            url: req.url,
            method: req.method || 'GET',
            // 是请求的基础地址
            // baseURL: 'http://www.shuiyue.info:12600',
            // 所有的请求都加上一个/apis，然后服务器会把它进行一个代理
            baseURL: '/apis', // 这个请求地址长什么样子？http://localhost:16666/apis/user/app/code
            // 请求头
            headers: { token: 'test token' },
            // 超时配置 -- 设置请求的最大时长
            timeout: 5000,
            // params参数配置 -- 它的参数会自动拼接到url地址上
            params: req.params || {},
            // data参数 -- 不能再get请求中使用，它是请求体参数
            data: req.data || {}
                // }).then(data => {
                // 请求返回的是一个response对象，希望得到数据
                // console.log(data.data)
        }).then(({ data }) => {
            // 可以对response对象进行解构取值
            // 返回数据
            resolve(data)
        }).catch(e => {
            console.log('----------------- 请求失败')
            resolve(e)
        })
    })

}

export default ajaxFunc